package com.example.test.operate.dao;


import com.example.test.operate.POJO.PO.OperateRolePO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;
import java.util.Map;

/**
 * <desc>
 *       角色管理数据访问接口
 * </desc>
 *
 * @createDate 2021-07-16
 */
@Mapper
@Repository
public interface IOperateRoleDao {

/**
 * <desc>
 *      获取角色列表
 * </desc>
 *
 * @param
 * @return
 * @author liuyu
 * @createDate 2021-07-20
 */
    List<OperateRolePO> getRoleList(OperateRolePO operateRolePO);


/**
 * <desc>
 *
 * </desc>
 *
 * @param
 * @return
 * @author liuyu
 * @createDate 2021-07-20
 */
    Integer save(OperateRolePO operateRolePO);


  /**
   * <desc>
   *      更新单个角色
   * </desc>
   *
   * @param
   * @return
   * @author liuyu
   * @createDate 2021-07-19
   */
   Integer update( OperateRolePO operateRolePO);
/**
 * <desc>
 *      保存用户角色
 * </desc>
 *
 * @Param 
 * @return 
 * @author liuyu
 * @createDate 2021-07-21
 */
   Integer saveRoleUsers(Map<String,Object> param);
   /**
    * <desc>
    *      删除用户角色
    * </desc>
    *
    * @param
    * @return
    * @author liuyu
    * @createDate 2021-07-21
    */
   Integer deleteRoleUsers(@Param("roleId") String roleId, @Param("userId") String[] userId);

    /**
     * <desc>
     *      保存角色的菜单资源
     * </desc>
     *
     * @param params 查询参数
     * @return
     * @author
     * @createDate
     */
    Integer saveRoleFunction(Map<String,Object> params);
}
